package cn.iocoder.yudao.module.nginxui.controller.admin.httplocation.vo;

import lombok.*;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;

import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

@Schema(description = "管理后台 - Nginx Server下的Location块配置分页 Request VO")
@Data
public class HttpLocationPageReqVO extends PageParam {

    @Schema(description = "server配置ID", example = "13878")
    private Long serverId;

    @Schema(description = "匹配路径")
    private String path;

    @Schema(description = "Location根目录")
    private String root;

    @Schema(description = "反向代理地址")
    private String proxyPass;

    @Schema(description = "尝试文件")
    private String tryFiles;

    @Schema(description = "重写规则")
    private String rewrite;

    @Schema(description = "允许访问的IP")
    private String allow;

    @Schema(description = "禁止访问的IP")
    private String deny;

    @Schema(description = "Location块额外自定义配置")
    private String extraLocationConfig;

    @Schema(description = "排序号")
    private Integer sort;

    @Schema(description = "状态", example = "2")
    private Integer status;

    @Schema(description = "创建时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] createTime;

}